package com.wuad.platformwuad.component.rabbitMq2;

import lombok.extern.slf4j.Slf4j;
//import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.util.UUID;

/**
 * 配置消息生产者
 *
 * @author ：Wuad
 * @date ：Created in 2021/7/13 16:26
 * @description :
 */
@Slf4j
@RestController
@RequestMapping("/order")
public class OrderController {
//    @Resource
//    private AmqpTemplate rabbitTemplate;
//
//    /**
//     * 模拟提交订单
//     * @author wuad
//     * @return java.lang.Object
//     */
//    @GetMapping("/submit")
//    public Object submit(){
//        String orderId = UUID.randomUUID().toString();
//        // 倒计时的时间
//        String time = 1000 * 10 + "";
//        log.info("消息生产者：submitOrder：{}", orderId);
//        this.rabbitTemplate.convertAndSend(
//                //发送至订单交换机
//                RabbitMQConfiguration.orderExchange,
//                //订单定routingKey
//                RabbitMQConfiguration.routingKeyOrder,
//                //订单号   这里可以传对象 比如直接传订单对象
//                orderId,
//                message -> {
//                    // 如果配置了 params.put("x-message-ttl", 5 * 1000);
//                    // 那么这一句也可以省略,具体根据业务需要是声明 Queue 的时候就指定好延迟时间还是在发送自己控制时间
//                    message.getMessageProperties().setExpiration(time);
//                    return message;
//                });
//
//        return "{'orderId':'"+orderId+"'}";
//    }
}
